#ifndef DB_H
#define DB_H

#include <mysql/mysql.h>
#include <string>
#include <ctime>
#include <muduo/base/Logging.h>
using namespace std;

/**
 * @brief mysql操作模块
 *
 */
class MySQL
{
public:
    // 初始化数据库连接
    MySQL();
    // 释放数据库连接资源
    ~MySQL();
    // 连接数据库
    bool connect();
    // 更新操作
    bool update(string sql);
    // 查询操作
    MYSQL_RES *query(string sql);
    // 获取连接
    MYSQL *getConnection();
    // 刷新空闲时间戳
    void refreshAliveTime();
    // 获取空闲存活时间
    clock_t getAliveTime();

private:
    clock_t _alivetime; // 记录空闲状态
    MYSQL *_conn;       // mysql连接
};

#endif